notebook: Fix assert in ::drag-motion
authorCarlos Garnacho <carlosg@gnome.org>
Tue, 26 May 2015 14:26:59 +0000 (16:26 +0200)
committerCarlos Garnacho <carlosg@gnome.org>
Tue, 26 May 2015 16:05:36 +0000 (18:05 +0200)
The drag destination might be empty, we shouldn't be checking whether
it contains pages at all. Instead, check the source notebook, which
ought to have a selected page if you're dragging something from there.

https://bugzilla.gnome.org/show_bug.cgi?id=749893

gtk/gtknotebook.c

index ef271913873906555e12bc0b90c606ab8e2cae0c..9edb66c3af113081e299cf93605c5f9dd1daf19a 100644 (file)
@@ -3829,8 +3829,6 @@ gtk_notebook_drag_motion (GtkWidget      *widget,
       goto out;
     }
 
-  g_assert (priv->cur_page != NULL);
-
   stop_scrolling (notebook);
   target = gtk_drag_dest_find_target (widget, context, NULL);
   tab_target = gdk_atom_intern_static_string ("GTK_NOTEBOOK_TAB");
@@ -3844,6 +3842,7 @@ gtk_notebook_drag_motion (GtkWidget      *widget,
       retval = TRUE;
 
       source = GTK_NOTEBOOK (gtk_drag_get_source_widget (context));
+      g_assert (source->priv->cur_page != NULL);
       source_child = source->priv->cur_page->child;
 
       group = notebook->priv->group;